When a device in a digital communication system receives a signal that is degraded due to channel noise, the device may recover from the signal digital data that contains bit errors. To eliminate or reduce such errors, some communication devices may employ encoding and decoding systems, respectively.
FIGS. 1A and 1B illustrate using encoding and decoding systems for reducing communication errors. FIG. 1A shows exemplary transmission and reception of digital data over a noisy channel. As shown, a communication system 100 includes a sender 102 (or a transmitter 102), a receiver 104, and a channel 106. For the purposes of simplicity and ease of understanding, other components of communication system 100 (e.g., radio frequency (RF) components (e.g., modulator, demodulator, etc.)) are not illustrated.
Sender 102 converts data (e.g., a stream of 1's and 0's) into a signal and transmits the signal to receiver 104. Receiver 104 receives the signal from sender 102, recovers the data from the signal, and outputs the data. Channel 106 provides a path through which the signal from sender 102 passes to reach receiver 104. While the signal is passing through channel 106, channel 106 injects noise into the signal. Consequently, receiver 104 recovers data from the received signal that includes errors (i.e., bits different from those in the original data).
In the above, a rate at which the errors occur in the recovered data is typically known as a bit-error-rate (BER). In system 100, the BER may depend on a ratio of power of the transmitted signal to power of the injected noise. This ratio is typically known as the signal-to-noise ratio (SNR). FIG. 1B shows a curve 120 of BER E as a function of SNR Q in a system that does not use encoding and decoding systems. As shown by BER curve 120, as Q increases, BER E decreases.
For a given SNR, communication system 100 (FIG. 1A) can decrease BER by using encoding and decoding systems. For example, sender 102 may employ a forward error correction (FEC) code encoder to encode the original data, convert the encoded data into a signal, and send the signal over channel 106. When receiver 104 receives the signal, receiver 104 may recover the encoded data from the signal, and decode the recovered data using a FEC code decoder. In decoding the recovered data, receiver 104 may detect and/or correct bit errors in the data. Such error corrections allow communication system 100 to reduce its BER at a particular SNR.
A FEC code encoder may encode data in accordance with one of many methods for generating different codes (i.e., bit patterns). Some FEC code encoders, for example, may generate block codes (e.g., Reed-Solomon codes, Hamming codes, etc.), convolutional codes, etc. Similarly, for each type of FEC codes, a corresponding FEC code decoder may decode the FEC codes to obtain the original data.
FIG. 1B also shows a curve 122 of BER E as a function of SNR in a communication system that implements FEC. As shown in curve 122, as SNR Q increases, E decreases. However, for a given value of BER, BER on curve 122 is at a smaller SNR than BER on curve 120. For example, when log (E) is approximately at −11, 20 log (Q) for BER curve 120 and BER curve 122 are 17 and 10, respectively. More generally, communication system 100 with FEC systems may obtain the same BERs at smaller SNRs than ones without the FEC systems.